<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <script>
    
        // 全局作用域 也有个this  this指向window
        // console.log(this);




        // 每个函数中都会有个this

        // 如何知道函数中的this是谁？？？

        // 函数中的this是由函数的调用模式来决定的。
        

        // 函数调用模式
        // 1. 函数调用模式      函数名()       this---->window
        // 2. 方法调用模式      对象.方法名()   this---->对象
        // 3. 构造函数调用模式  new 构造函数名() this---->new创建出来的实例
        // 4. 上下文调用模式    函数名.call 函数名.apply this----->call和apply的第一个参数


        // var age = 18;

        // function foo(){
        //     console.log(this.age);
        // }

        // var obj = {
        //     age: 81
        // }

        // obj.sayHello = foo;

        // obj.sayHello();


        // var age = 18;

        // var obj = {
        //     age: 81,
        //     foo: function (){
        //         console.log(this.age);
        //     }
        // }

        // var func = obj.foo;

        // func();
    </script>
</body>
</html>